Windows
有幾種 File System
類型,如 FAT12
、FAT16
、FAT32
之類的。
FAT12
、FAT16
這兩種文件系統類型已經不再用於現代的 Windows
。
接下來就稍微介紹一下 FAT32
~
FAT32
廣泛用於多種存儲設備,如 USB
記憶棒和 SD
卡,但也可用於格式化硬碟。
名稱中的 「32」 表示 FAT32
使用 32 位元數據來識別存儲設備上的資料群。
裝置相容性
可以用於電腦、數位相機、遊戲機、智慧型手機、平板電腦等設備。
操作系統跨平台相容性
從 Windows 95
開始,FAT32
可用於所有 Windows
操作系統,並且也受到 MacOS
和 Linux
的支援。
僅能用於小於 4GB 的文件。
無內建的數據保護或文件壓縮功能。
需要使用第三方工具進行文件加密。
相關漏洞:https://www.cvedetails.com/microsoft-bulletin/MS14-063/
NTFS
自 Windows NT 3.1
以來一直是 Windows
的預設文件系統。
除了彌補 FAT32
的缺點外,NTFS
還具有更好的元數據支援和更高效的數據結構處理性能。
NTFS
可靠,能在系統故障或斷電的情況下恢復文件系統的一致性。
提供安全性,允許我們對文件和資料夾設置細粒度的權限。
支援非常大的分區大小。
具有內建日誌功能,對文件的修改(新增、修改、刪除)會被記錄。
大多數行動裝置不原生支援 NTFS
。
一些舊式媒體設備,如電視和數位相機,不支援 NTFS
存儲設備。
NTFS
文件系統具有許多基本和高級的權限 ~ 部分關鍵權限類型包括:
全縣類型 | 描述 |
---|---|
Full Control | 允許讀取、寫入、更改、刪除檔案/資料夾。 |
Modify | 允許讀取、寫入和刪除檔案/資料夾。 |
List Folder Contents | 允許查看和列出資料夾及子資料夾的內容,以及執行檔案(僅資料夾繼承此權限)。 |
Read and Execute | 允許查看和列出檔案及子資料夾內容,並執行檔案(檔案和資料夾繼承此權限)。 |
Write | 允許將檔案新增到資料夾和子資料夾,並寫入檔案。 |
Read | 允許查看和列出資料夾及子資料夾,並查看檔案內容。 |
Traverse Folder | 允許或拒絕穿越資料夾以存取其他檔案或資料夾。例如,使用者可能無法列出目錄內容或查看檔案,但有此權限時,仍可存取備份檔案。 |
可以通過文件資源管理器中的安全標籤管理 Windows
中的 NTFS
文件和資料夾權限。
除了圖形界面之外,我們還可以通過命令行使用 icacls
工具以更細緻的方式管理 NTFS
文件權限。
可以通過執行 icacls
命令列出特定目錄的 NTFS
權限,例如:
範例:
C:\htb> icacls c:\windows
c:\windows NT SERVICE\TrustedInstaller:(F)
NT SERVICE\TrustedInstaller:(CI)(IO)(F)
NT AUTHORITY\SYSTEM:(M)
NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(F)
BUILTIN\Administrators:(M)
BUILTIN\Administrators:(OI)(CI)(IO)(F)
BUILTIN\Users:(RX)
BUILTIN\Users:(OI)(CI)(IO)(GR,GE)
CREATOR OWNER:(OI)(CI)(IO)(F)
APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(RX)
APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(OI)(CI)(IO)(GR,GE)
APPLICATION PACKAGE AUTHORITY\ALL RESTRICTED APPLICATION PACKAGES:(RX)
APPLICATION PACKAGE AUTHORITY\ALL RESTRICTED APPLICATION PACKAGES:(OI)(CI)(IO)(GR,GE)
可以看到 ~ 「資源訪問級別」會列在每個使用者後面。可能的繼承設置包括:
在上例中,NT AUTHORITY\SYSTEM
帳戶具有對象繼承、容器繼承、僅繼承和完全訪問權限,意味著該帳戶對該目錄及其子目錄中的所有文件系統對象擁有完全控制權。
基本訪問權限如下:
我們可以通過命令行使用 icacls
添加和移除權限。
以下是在本地管理員帳戶的上下文中執行 icacls
,顯示 C:\users
目錄的權限,其中 kika 使用者沒有寫入權限的示例:
C:\htb> icacls c:\Users
c:\Users NT AUTHORITY\SYSTEM:(OI)(CI)(F)
BUILTIN\Administrators:(OI)(CI)(F)
BUILTIN\Users:(RX)
BUILTIN\Users:(OI)(CI)(IO)(GR,GE)
Everyone:(RX)
Everyone:(OI)(CI)(IO)(GR,GE)
Successfully processed 1 files; Failed processing 0 files
如果我們今天想要授予使用者 kika 對目錄的完全控制權,可以下:
icacls c:\users /grant kika:f
但由於未包含 (oi) 和 (ci) 參數,kika 使用者僅對 c:\users 資料夾有權限,而對其子目錄和文件則無權限。
使用 icacls c:\users /remove kika
可以撤銷這些權限。
有關更多 icacls 指令,可以參考:
https://learn.microsoft.com/zh-tw/windows-server/administration/windows-commands/icacls
今天稍微看了一下有關 Windows 的文件系統以及如何透過指令管理角色的權限~
之後會繼續介紹剩下的 Windows 基礎知識!
https://academy.hackthebox.com/